Re-mapping trellis encoded data associated with a 2-bit constellation tone to data associated with a pair of 1-bit constellation tones

ABSTRACT

According to some embodiments, Trellis encoded data associated with a 2-bit constellation tone is re-mapped to data associated with a pair of 1-bit constellation tones.

BACKGROUND

[0001] A modem can be used to exchange information through acommunication network. Moreover, the modem may include a data pump tofacilitate the exchange of information in accordance with a particularprotocol. For example, the data pump might be adapted to receive andtransmit data over a telephone wire in accordance with a DigitalSubscriber Line (DSL) protocol.

BRIEF DESCRIPTION OF THE DRAWINGS

[0002]FIG. 1 illustrates an X-Y axis and a constellation pattern.

[0003]FIG. 2 is a block diagram of a transmit path according to someembodiments.

[0004]FIG. 3 is a transmit method according to some embodiments.

[0005]FIG. 4 illustrates an original tone order according to someembodiments.

[0006]FIG. 5 illustrates numbers of bits supported in each toneaccording to some embodiments.

[0007]FIG. 6 illustrates a list of re-ordered tones according to someembodiments.

[0008]FIG. 7 illustrates a list of re-ordered numbers of bits supportedaccording to some embodiments.

[0009]FIG. 8 is a block diagram of a receive path according to someembodiments.

[0010]FIG. 9 illustrates a sixteen tone example according to someembodiments.

[0011]FIG. 10 is a block diagram of a modem according to someembodiments.

[0012]FIG. 11 is a block diagram of a digital subscriber line accessmultiplexer according to some embodiments.

DETAILED DESCRIPTION

[0013] Some embodiments of the present invention are associated with theexchange of data through a channel (e.g., a telephone wire). To increasethe rate at which information can be exchanged, the channel's bandwidthmay be divided into a number of subchannels (and data can besimultaneously transmitted via each subchannel). For example, 1.1MegaHertz (MHz) of available bandwidth could be divided into 256separate subchannels, also referred to as “tones”, each tone having abandwidth of 4 KiloHertz (KHz).

[0014] To further improve performance, phase and amplitude modulationmay be used to increase the amount of information that can besimultaneously transmitted using a particular tone. For example, a phasevalue can represent an angle and an amplitude value can represent adistance as illustrated by the X-Y axis 100 in FIG. 1. In this case,different phase and amplitude combinations will represent differentpoints on the axis 100, and each point can be assigned a particularcombination of bits (e.g., “10” or “11”). Such an approach is referredto as “constellation” mapping.

[0015] Although four points are illustrated in the constellation patternof FIG. 1, other numbers of points may be defined. For example,Quadrature Amplitude Modulation (QAM) might define sixty-fourconstellation points (and therefore up to six bits of data could betransmitted simultaneously).

[0016] Generally, a higher quality tone signal (e.g., associated with ahigh signal-to-noise ratio) can support more points (and thus be able totransmit more data simultaneously) as compared to a lower quality tonesignal. Note the quality of one tone in a channel can be different thanthe quality of another tone in the same channel. For example, one tonemight be able to carry eight bits while another tone is only able tocarry a single bit (which is referred to as a “1-bit constellationtone”).

[0017] A large enough error in the phase or angle information will causean incorrect point in the constellation to be interpreted (resulting inan error in the exchanged data). To address this problem, Trellis CodedModulation (TCM) combines coding and error correction techniques byadding additional bits that can be used to determine what data that wasactually transmitted. In one approach, two tones—each able to supporttwo or more bits—are paired and Trellis encoding/decoding is performedon the pair of tones. In this case, any 1-bit constellation tones arenot used. Examples of this approach include the InternationalTelecommunication Union (ITU) Recommendation G.992.1 entitled“Asymmetrical Digital Subscriber Line (ADSL) Transceivers” (1999) andRecommendation G.992.2 entitled “Splitterless Asymmetric DigitalSubscriber Line (ADSL) Transceivers” (1999).

[0018] To improve performance, two 1-bit constellation tones can bepaired to create a pseudo 2-bit constellation tone. The pseudo 2-bitconstellation tone is then used to exchange information (e.g., andTrellis encoding/decoding can be performed with respect to the pseudo2-bit constellation tone). One example of the approach is ITURecommendation G.992.3 entitled “Asymmetrical Digital Subscriber Line(ADSL) Transceivers-2 (ADSL2)” (2002).

[0019] To perform constellation mapping, tone pairing, Trellis encoding(or decoding), and/or other functions, an Application SpecificIntegrated Circuit (ASIC) device may be provided. Note, however, that anASIC device that was designed to perform Trellis encoding/decoding onlyfor tones that can support 2-bit or higher constellations (such as onedesigned for G.992.1 and/or G.992.2) might not be able to performcertain functions for a 1-bit constellation (e.g., as defined in ADSL2).Although the ASIC device could be re-designed to support 1-bitconstellations, this approach could be costly and time consuming.Moreover, algorithms and/or technical standards that are developed afterthe ASIC device is re-designed might not be supported.

[0020] Transmit Path

[0021]FIG. 2 is a transmit path 200 according to some embodiments. Thetransmit path 200 may be associated with, for example, an ADSL2 datapump.

[0022] A pre-processing device 210 receives data to be transmitted andprovides information to a Trellis encoding engine 220. A post-processingdevice 230 receives information from the Trellis encoding engine 220 andprovides data to be transmitted (e.g., via a telephone wire). Thepre-processing device 210 and post-processing device 230 may comprise,for example, firmware or software devices. The Trellis encoding engine220 might be, for example, an ASIC device (e.g., a sub-block in anintegrated circuit) designed to support G.992.1 and/or G.992.2.

[0023]FIG. 3 is a flow chart of a method according to some embodiments.The flow charts described herein do not necessarily imply a fixed orderto the actions, and embodiments may be performed in any order that ispracticable. The method of FIG. 3 may be associated with, for example,the transmit path 200. Note that any of the methods described herein maybe performed by firmware, hardware, software, or any combination ofthese techniques. For example, a storage medium may store thereoninstructions that when executed by a machine result in performanceaccording to any of the embodiments described herein.

[0024] Recall that the bandwidth of a single communication channel(e.g., a telephone wire) may be divided into a number of differenttones. As illustrated in FIG. 4, an original tone order 400 (e.g., atable) may be established to indicate the order in which these tone willbe processed. Although eight tones will be used as an example, anynumber of tones may be supported in accordance with embodimentsdescribed herein.

[0025] Another way of expressing the original tone order 400 is to havet represent the tone index for i=1 to the Number of Subcarriers (NSC).That is, in this example t=[2, 3, 8, 1, 4, 7, 6, 5].

[0026] As illustrated in FIG. 5, each of the eight tones may be ablesimultaneously exchange a different number of bits. In particular, thenumbers of bits supported 500 (e.g., a table) by the tones may beassociated with the quality of the tone signal. In this example, theeighth tone can support a 4-bit constellation while the third tone canonly support a 1-bit constellation. Another way of expressing thenumbers of bits supported 500 is to have b represent the numbers of bitssupported in ascending order of tone frequency. In this example, b=[2,3, 1, 2, 2, 1, 3, 4]. Note that b may be defined, for example, when acommunication link is established via a channel (e.g., after the qualityof each tone signal has been tested).

[0027] A list of re-ordered tones 600 (e.g., a table) may then begenerated based on the original tone order 400 and the numbers of bitssupported 500 as illustrated in FIG. 6. For example, 1-bit constellationtones may be moved to the bottom of the list. In this example, thesecond and seventh tones in the original tone order 400 (i.e.,originally tons 3 and 6) have been moved to the bottom of the list, andthe re-ordered tones may be represented by t′=[2, 8, 1, 4, 7, 5, 3, 6].Constellation mapping may then occur in sequence according to t′ andwith the numbers of bits as indicated by b.

[0028] As illustrated in FIG. 7, the list of re-ordered tones 600 maythen be used to select pairs of tones. For example, tones 2 and 8 may bepaired and tones 1 and 4 may be paired. The tones may be paired, forexample, so that a redundant bit can be added to each pair during aTrellis encoding process.

[0029] Referring again to FIG. 3, a first 1-bit constellation tone maybe paired with a second 1-bit constellation tone to create a 2-bitconstellation tone. In this example, the seventh and eighth tones in thelist of re-ordered tones 600 (i.e., tones 3 and 6) have been paired.

[0030] The list of re-ordered tones 600 may also be used to generate alist of re-ordered numbers of bits 700 or b′. According to someembodiments, a spare location is provided at the top of the list 700 foreach pair of 1-bit constellation tones in the list of re-ordered tones600. The numbers of bits are then listed in accordance with the list ofre-ordered tones 600 (and the information in FIG. 5), but the pair of1-bit constellation tones are represented by a single pseudo 2-bitconstellation value (ie., the eighth value in the list 700).

[0031] The processes associated with the numbers of bits supported 500,the list of re-ordered tones 600, the tone pairing, and/or the list ofre-ordered tones 600 may be performed, for example, by thepre-processing device 210 (e.g., firmware).

[0032] At 304, a transmit encoding process is performed on dataassociated with the pseudo 2-bit constellation tone (e.g., on datastored in a transmit input buffer). For example, the Trellis encodingengine 220 may perform Trellis encoding according to b′ (e.g., TCM maybe performed in accordance with a DMT and/or ADSL protocol) and a result(e.g., [Xi, Yi]) may be stored in a transmit output buffer.

[0033] At 306, data associated with the pseudo 2-bit constellation toneis re-mapped to data associated with the first and second 1-bitconstellation tones. For example, [Xi, Yi] for the pseudo 2-bitconstellation tone may be re-mapped to [X1, Y1] and [X2, Y2] for the two1-bit constellation tones. Note that, according to some embodiments:

X=(X2+Y2)/2;

Y=(X1+Y1)/2;

X1=Y1; and

X2=Y2.

[0034] As a result, X1=Y1=Y and X2=Y2=X. In other words, thepost-processing device 230 (e.g., firmware) may associate the first1-bit constellation tone with coordinate [Y, Y] and the second 1-bitconstellation tone with coordinate [X, X].

[0035] The data may then be transmitted (e.g., via a telephone wire) viathe first and second 1-bit constellation tones in accordance with there-mapping. Note that the Trellis encoding engine 220 may not need toperform any function associated with a 1-bit constellation tonedifferently than it would for a 2-bit constellation tone. As a result, aTrellis encoding engine 220 (e.g., an ASIC device) designed inaccordance with G.992.1 and/or G.992.2 may be used to support the ADSL2protocol. That is, the differences between the protocols can be handledby the pre-processing device 210 and/or the post-processing device 230(e.g. firmware).

[0036] Receive Path

[0037]FIG. 8 is a receive path 800 according to some embodiments. Thereceive path 800 may be associated with, for example, an ADSL2 datapump.

[0038] A pre-processing device 810 receives data (e.g., via a telephonewire) and provides information to a Trellis decoding engine 820. Apost-processing device 830 receives information from the Trellisdecoding engine 820 and provides data. The pre-processing device 810 andpost-processing device 830 may comprise, for example, firmware orsoftware devices. The Trellis decoding engine 820 might be, for example,an ASIC device designed to support G.992.1 and/or G.992.2.

[0039] In this case, constellation re-mapping may merge data associatedwith two 1-bit constellation tones (e.g., [X1, Y1], [X2, Y2]) into dataassociated with a pseudo 2-bit constellation tone (e.g., [X, Y]). In theprevious example, the data associated with 1-bit constellation tone 3may be [X1, Y1], and the data associated with 1-bit constellation tone 6may be [X2, Y2]. This may be re-mapped into a pseudo 2-bit constellationtone as follows:

X=(X2+Y2)/2; and

Y=(X1+Y1)/2.

[0040] After the re-mapping, the information contained in the pair of1-bit constellation tones [X1, Y1] and [X2, Y2] is equal to theinformation contained in the pseudo 2-bit constellation tone [X, Y].After the Trellis decoding engine 820 processes the information, aresult may be stored in a receive output buffer.

EXAMPLE

[0041]FIG. 9 illustrates a sixteen tone example 900 according to someembodiments. In this example 900, list of re-ordered tones is generatedby moving the following 1-bit constellation tones to the bottom of thelist: tone 0, tone 11 (as illustrated by the arrow in FIG. 9), tone 14,and tone 5. Moreover, two pairs of 1-bit constellation tones areidentified (tones 9 and 11 and tones 14 and 5) to create two pseudo2-bit constellations. As a result, two spare locations are inserted atthe top of the re-ordered numbers of bits. This example 900 alsoillustrates that some tones may be unable to support any bits (e.g.,tones 6 and 13).

[0042] Systems

[0043]FIG. 10 is a block diagram of a modem 1000, such as an Intel®PRO/DSL 3200 modem, according to some embodiments. The modem may, forexample, exchange information between a Personal Computer (PC) and aremote device (e.g., via line Tx and line Rx). The modem 1000 includesan ADSL data pump 1010 in accordance with any of the embodimentsdescribed herein. For example, the data pump 1010 may include (i) aTrellis encoding engine to encode data associated with a 2-bitconstellation tone and (ii) a post-processing device to re-map dataassociated with the 2-bit constellation tone to data associated with two1-bit constellation tones. The modem 1000 may also include an Ethernetinterface 1020 (e.g., to exchange information with the PC). According toother embodiments the modem 1000 includes a Universal Serial Bus (USB)interface instead of, or in addition to, the Ethernet interface 1020.

[0044]FIG. 11 is a block diagram of a Digital Subscriber Line AccessMultiplexer (DSLAM) 1100 according to some embodiments. The DSLAM 1100may be located at, for example, a telephone company central office. TheDSLAM 1100 includes a bank of modems 1110 that exchange information withmultiple remote devices (e.g., subscriber modems). One or more of themodems 1110 may include an ADSL data pump 1120 in accordance with any ofthe embodiments described herein. For example, the data pump 1120 mayinclude (i) a Trellis encoding engine to encode data associated with a2-bit constellation tone and (ii) a post-processing device to re-mapdata associated with the 2-bit constellation tone data associated withtwo 1-bit constellation tones. The DSLAM 1100 may also include anAsynchronous Transfer Mode (ATM) interface 1130 (e.g., to exchangeinformation with an Internet service provider). According to otherembodiments the DSLAM 1100 includes an interface to another high-speedback bone instead of, or in addition to, the ATM interface 1130.

[0045] Additional Embodiments

[0046] The following illustrates various additional embodiments. Thesedo not constitute a definition of all possible embodiments, and thoseskilled in the art will understand that many other embodiments arepossible. Further, although the following embodiments are brieflydescribed for clarity, those skilled in the art will understand how tomake any changes, if necessary, to the above description to accommodatethese and other embodiments and applications.

[0047] For example, although particular techniques for creating are-ordered list of numbers of bits were illustrated, other approachesmay be used in accordance with the embodiments described herein. Forexample, spare locations in the list (e.g., resulting from the pairingof two 1-bit constellation tones) could be inserted at the bottom of thelist instead of the top. Similarly, 1-bit constellation tones could bemoved to the top of the re-ordered list of tones instead of the bottom.

[0048] The several embodiments described herein are solely for thepurpose of illustration. Persons skilled in the art will recognize fromthis description other embodiments may be practiced with modificationsand alterations limited only by the claims.

What is claimed is:
 1. A method, comprising: pairing a first 1-bitconstellation tone with a second 1-bit constellation tone to create a2-bit constellation tone; performing a transmit encoding process on dataassociated with the 2-bit constellation tone; and re-mapping dataassociated with the 2-bit constellation tone to data associated with thefirst and second 1-bit constellation tones.
 2. The method of claim 1,wherein encoded data associated with the 2-bit constellation tone isassociated with coordinate [X, Y], and said re-mapping comprises:associating the first 1-bit constellation tone with coordinate [Y, Y]and the second 1-bit constellation tone with coordinate [X, X].
 3. Themethod of claim 1, wherein the transmit encoding process is associatedwith Trellis code modulation.
 4. The method of claim 1, furthercomprising: transmitting data via the first and second 1-bitconstellation tones in accordance with the re-mapping.
 5. The method ofclaim 1, further comprising: establishing an ordered tone table and anordered bit table.
 6. The method of claim 5, wherein a re-ordered tonetable and re-ordered bit table are generated before the transmitencoding process is performed.
 7. The method of claim 6, furthercomprising: identifying the first and second 1-bit constellation tonesin association with the generation of the re-ordered tone table.
 8. Themethod of claim 6, further comprising: including a spare location in there-ordered bit table.
 9. The method of claim 6, wherein Trellis codingis performed in accordance with the re-ordered bit table.
 10. The methodof claim 6, wherein constellation mapping is performed in accordancewith the re-ordered tone table.
 11. The method of claim 1, wherein thetransmit encoding process is associated with at least one of (i) adiscrete multi-tone protocol and (ii) an asynchronous digital subscriberline protocol.
 12. An apparatus, comprising: a Trellis encoding engineto encode data associated with a 2-bit constellation tone; and apost-processing device to re-map data associated with the 2-bitconstellation tone to data associated with a first 1-bit constellationtone and a second 1-bit constellation tone.
 13. The apparatus of claim12, further comprising a pre-processing device to pair the first 1-bitconstellation tone with the second 1-bit constellation tone.
 14. Theapparatus of claim 12, wherein the Trellis encoding engine is anapplication specific integrated circuit device.
 15. The apparatus ofclaim 12, wherein the post-processing device comprises at least one of:(i) firmware and (ii) software.
 16. An apparatus, comprising: a storagemedium having stored thereon instructions that when executed by amachine result in the following: pairing a first 1-bit constellationtone with a second 1-bit constellation tone to create a 2-bitconstellation tone; arranging for a transmit encoding process to beperformed on data associated with the 2-bit constellation tone; andre-mapping data associated with the 2-bit constellation tone to dataassociated with the first and second 1-bit constellation tones.
 17. Themethod of claim 16, wherein encoded data associated with the 2-bitconstellation tone is associated with coordinate [X, Y], and saidre-mapping comprises: associating the first 1-bit constellation tonewith coordinate [Y, Y] and the second 1-bit constellation tone withcoordinate [X, X].
 18. A modem, comprising: an asynchronous digitalsubscriber line data pump, including: a Trellis encoding engine toencode data associated with a 2-bit constellation tone, and apost-processing device to re-map data associated with the 2-bitconstellation tone to data associated with a first 1-bit constellationtone and a second 1-bit constellation tone; and an Ethernet interface.19. The modem of claim 18, wherein the data pump further comprises apre-processing device to pair the first 1-bit constellation tone withthe second 1-bit constellation tone.
 20. A digital subscriber lineaccess multiplexer, comprising: a modem, including: a Trellis encodingengine to encode data associated with a 2-bit constellation tone, and apost-processing device to re-map data associated with the 2-bitconstellation tone to data associated with a first 1-bit constellationtone and a second 1-bit constellation tone; and an asynchronous transfermode interface.
 21. The digital subscriber line access multiplexer ofclaim 20, wherein the modem further comprises a pre-processing device topair the first 1-bit constellation tone with the second 1-bitconstellation tone.